Objetivos
- Definir os conceitos fundamentais de um sistema operativo;
- Aplicar os aspetos relevantes da implementação da gestão de processos, nomeadamente o suporte a processos, tarefas, escalonamento, sincronismo (com semáforos, variáveis de condição e monitores) e o mecanismo de comunicação de memória partilhada entre processos num computador;
- Discutir os aspetos relevantes da implementação da gestão de memória, designadamente o suporte à memória principal e memória virtual;
- Aplicar os aspetos relevantes da implementação da gestão de armazenamento de dados, nomeadamente o suporte a ficheiros, acesso a ficheiros, sistemas de ficheiros e entrada e saída de dados;
- Discutir o conceito de máquina virtual face a sistema operativo.
- Discutir as principais características da plataforma e linguagem Java;
- Discutir os requisitos de sistema operativo para suporte a multimédia, designadamente: escalonamento de CPU; escalonamento de acesso a disco; e comunicação de dados;
- Desenvolver aplicações Java com interface gráfica (GUI) que demonstrem a devida utilização dos conceitos abordados.